package com.itlong.cloud.operate.dao;

import com.itlong.cloud.POJO.PO.InterfacePO;
import com.itlong.cloud.POJO.PO.OperateAppTypePO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;

/**
 * <desc>
 *         应用类型数据访问接口
 * </desc>
 *
 * @createDate 2021-08-04
 */
@Mapper
@Repository
public interface IOperateAppTypeDao {
   /**
   * <desc>
   *      获取分页列表
   * </desc>
   * @param params
   * @return: java.util.List<com.itlong.cloud.POJO.PO.OperateAppTypePO>
   * @author LiuYu
   * @date: 2021-08-16
    **/
    List<OperateAppTypePO> getAppTypeList(Map<String,Object> params);

    /**
    * <desc>
    *     获取分页总数量
    * </desc>
    * @param params
    * @return: java.lang.Integer
    * @author LiuYu
    * @date: 2021-08-16
     **/
    Integer getPageCount(Map<String,Object> params);

   /**
   * <desc>
   *     添加应用类型
   * </desc>
   * @param parms
   * @return: java.lang.Integer
   * @author LiuYu
   * @date: 2021-08-16
    **/
    Integer save(Map<String,Object> parms);

    /**
    * <desc>
    *      修改应用类型
    * </desc>
    * @param parms
    * @return: java.lang.Integer
    * @author LiuYu
    * @date: 2021-08-16
     **/
    Integer update(Map<String,Object> parms);

    /**
    * <desc>
    *      批量删除
    * </desc>
    * @param ids
    * @return: java.lang.Integer
    * @author LiuYu
    * @date: 2021-08-16
     **/
    Integer delete(@Param("ids") String ids);

    /**
    * <desc>
    *      获取分配接口类型
    * </desc>
    * @param appTypeId
    * @return: java.util.List<com.itlong.cloud.POJO.PO.InterfacePO>
    * @author LiuYu
    * @date: 2021-08-16
     **/
    List<InterfacePO> getAllotInterfaces(@Param("appTypeId")String appTypeId);

    /**
    * <desc>
    *     分配接口类型提交
    * </desc>
    * @param parms
    * @return: java.lang.Integer
    * @author LiuYu
    * @date: 2021-08-16
     **/
    Integer commitAllotInterfaces(Map<String,Object> parms);


    /**
    * <desc>
    *     删除分配接口类型
    * </desc>
    * @param appTypeId
    * @return: java.lang.Integer
    * @author LiuYu
    * @date: 2021-08-16
     **/
    Integer deleteAllotInterfaces(@Param("appTypeId") String appTypeId);

}
